perm filename SETS.EX[TLK,DBL] blob sn#200775 filedate 1976-02-10 generic text, type T, neo UTF8
	EXAMPLE: First steps: Sets

As soon as you hear that a system is  guided using all these numbers,
it's  natural to wonder  how dependent its  behavior is  on them, how
fragile it is.

To show that  AM is actually  quite tough in  this respect, my  first
example will  be of the system  just starting out, with  the interest
factor of each concept set to the same value, say 200.

A  relationship  that βŠ—4isβŠ—*  necessary  s  that of  all  the facets,
Examples be given the highest priority. That is, if  this tiny factor
ever decides  which job you  do, it should  decide on filling  in the
examples of a concept.

The fundamental mathematical  truth behind this  is that looking  for
examples is rarely a waste of time; it's the primary way of obtaining
some empirical data to induce upon.

At the very beginning of the run, there are no jobs on the agenda. AM
asks each  concept's  SUggest  facet  to propose  some  jobs  to  do.
Exs.SUggest proposes a  job of the form  (Fill in exs of  C) for each
concept  C. THe reason is always that  there are no known examples of
C. This reason is mediocre, gets a 100 rating, and the job as a whole
therefore gets assigned a priority of

100 x (.4 Int(C) +  + .3x0 (=Priority(current job) + .2 Int(Fillin) +
.3 Int(Examples)).

Similar jobs  get  proposed  for  filling in  other  facets  of  each
concept.  These are the only jobs proposed.   SInce all concepts have
interest rating 200, and since Examples is the highest-ranking facet,
the job at the top of the agenda will be (fill in exs of  C) for some
random concept  C. Let's assume that  the concept is Union.  So AM is
trying to find some examples of the operation Union.

GETTING INTERESTED IN SETS

All the heuristics from the following places are picked up and thrown
together into one large production system:
.B Fillin  facet  of Examples  concept  Fillin facet  of  Any-concept
concept  Any-facet facet of  Union Examples  facet of  Union Examples
facet of  Operation  Examples facet  of  Activity Examples  facet  of
Any-concept

.E

This facet (Exs. of Operation) knows that  an example of an operation
can  be obtained  by running  the operation on  some examples  of its
domain.  The domain of UNION is Sets, so several accesses are made to
the Examples  facet of  Sets. This  facet is  blank, but  each access
causes a  job of the form ((Fillin exs of Sets) because ((Would allow
exs of UNION  too be filed  in)) to be  proposed with a low  priority
rating,  say 20.   But that  job alread exists,  but for  a different
reason. So the  priority is raised  to SQRT( 200↑2  + 20↑2) which  is
around 201.   The  only importance  of the  formula is  to raise  the
priority, it doesn't  matter by what amount.  Similarly, the accesses
raise the inteest factor for the Sets concept, say from 200 to 300.

Even though no examples of UNION can be found, the very next job will
be this one.


AM is now trying  to fill in examples of Sets.   Some of the relevant
heuristics have AM manipulate the defn of sets.  Another bunch ask if
there are some interestingness features that Sets can  have. That is,
are there some  predicates which might or might not  hold for a given
set, but which indicate that the set is interesting if they do  hold.
Such predicates  are  precisely the  INTEREST part  of each  concept.
Notice that  any such predicate that applies to  x will also apply to
any specialization of x, so in our case we consider all the predicats
on  SETS.INT  (i.e.,   the  Interest  facet  of   the  Sets  concept)
STRUCTURE.INT OBJECT.INT ANY-CONCEPT.INT

One  of these says that a structure S  is interesting if all pairs of
members satisfy some interesting predicate P(x,y).  The interest of S
is  then estimated to  be 100  + .01(Int.  of P)(SQUARE  (SMALLER 10,
(length of S)))

So AM creates a new concept, Int-Set, defined as any set all pairs of
whose  elements  satisfy  the same  interesting  predicate  P.    The
interest  of this  set is  computed as  root-sum-of-squares of  the 2
numbers: Int(Set) and (100 + .01(Int of best predicate)(Avg length of
set).  That is, 300 and (100 + .01(200)(10)); i.e., 300 and 120. This
is about 350.

GETTING INTERESTED IN EQUALITY

Soon, AM gets around to filling in examples of Int-Sets.

Each time  AM finds an example of Int-Sets, it is really finding both
a set S and a predicte P,  where all x and y in S satisfy  P(x,y).  A
heuristic says that each time,  the interestingness of the P which is
found should be increased. Again, this is much more dramatic the very
first time, since after that the reason is the same.

In particular, AM finds examples of sets  all pairs of whose elements
are Equal.   E.g., {A}, {  }, { {A,B,{C}} }.  That is: singletons and
the empty set.   Each time, the interest  value of the Equal  concept
gets bumped upward.  B the end, it has risen from 200 to 300, say.

So of all the active concepts, Equal will be the first investigated.

Let's moveahead  in time, and we  find AM working on  the job (fillin
exs of Equal).

AM  tries random objects, and finds very  few successes, say 2 out of
155 tries.  A heuristic attached to Exs facet of Predicate knows that
if this ratio  is very low, then the predicate  involved might be too
strict, too hard to  satisfy; at least, a  generalized version of  it
might be just as worthwhile. So it adds the job

((Generalize the Defn of Equality) ("Equal is too strict") 335).

The 335 rating was computed by the heuristic as

200 + .4 Int(Equality) + .3(Current job's interest) + .2 Int.(Defn) +
.1 Int(Fillin) which comes out to be around 335.

What's  important was  that AM  raised the  Equality concept  AT ALL,
making it better than its fellow activities.

END OF SETS/EQUALITY EXAMPLE

.SKIP TO COLUMN 1
.SELECT 1